package com.sise.cn.api.common.po;

import com.sise.cn.dao.annotation.IgnoreField;
import com.sise.cn.dao.annotation.MybatisLabel;
import com.sise.cn.dao.annotation.PrimaryId;
import com.sise.cn.dao.annotation.UniqueIndex;
import com.sise.cn.dao.base.TableSpace;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

/**
 * @author 龚秀峰
 * @version 1.0
 * @date 2020/6/10 8:49
 * 产品的通用父类
 */
@Data
@EqualsAndHashCode(callSuper = false)
public class Product extends TableSpace implements Serializable {

    /**
     * 产品名称
     */
    private String productName;

    /**
     * 产品编号
     */
    private String productCode;

    /**
     * 产品价格
     */
    private BigDecimal price;

    /**
     * 产品介绍
     */
    private String productIntroduce;

    /**
     * 产品的最小计量单位
     * 例如 、厘米、米、寸、kg等
     */
    private String unit;

    /**
     * 产品的包装单位（零售单位）
     * 比如 盒、套、组、包、箱
     */
    private String packingUnit;

    /**
     * 零售单位与最小单位的换算数值
     * 比如 1箱可乐 包含 10瓶 可乐、一盒药包含十二粒药片
     */
    private Integer conversionRelationship;

    /**
     * 商品资源集合
     * 比如 多张图片
     */
    @IgnoreField
    private List<Long> resourceIds;

    /**
     * 产品关联的库存ID
     */
    private Long stockId;

    /**
     * 关联具体的产品详情ID，比如 一张门票、一个电脑
     */
    private Long specificProductId;

}
